Pseudo-overwriting data on write-once discs

ABSTRACT

A file system which is enabled to use a Metadata Partition instead of VAT for write-once discs, is provided by a pseudo-overwrite method. On applying this invention to a drive apparatus which supports pseudo-overwrite media, the file system distinguishes data to overwrite from data to append. When the data is newly written to a logical sector, the drive apparatus writes the data to a physical sector to which the logical sector corresponds. When the logical sector is overwritten the data is written to another unrecorded physical sector in the volume space, and remapping information that specifies the original address, and the remapping address are stored in the remapping table.

The present application is a §371 of PCT/JP05/08821, filed May 9, 2005,which claims priority to U.S. Provisional Application Nos. 60/569,537,filed May 10, 2004; 60/577,616, filed Jun. 7, 2004; 60/605,488, filedAug. 31, 2004; and 60/668,237, filed Apr. 4, 2005.

TECHNICAL FIELD

The present invention relates to a recording method for a write-oncedisc using a logical-overwritable mechanism and a semiconductorintegrated circuit for use in a recording apparatus and/or areproduction apparatus.

BACKGROUND ART

File systems for optical discs have made advances through variousactivities to develop UDF (Universal Disk Format®) specificationspublished from OSTA (Optical Storage Technology Association).

For write-once discs, the recording method has improved frommulti-session recording to file-by-file recording using VAT (VirtualAllocation Table).

On the other hand, for rewritable discs, a volume and file structure hasimproved from the structure using non-sequential recording defined inECMA 167, which is the international standard, to the structure usingMetadata Partition specified in UDF Revision 2.5 (hereinafter UDF 2.5).The merits to use Metadata Partition are the improvement in theperformance to retrieve metadata, such as file entries/directories, andto increase the robustness from media damage.

However, Metadata Partition cannot be used for data appending usage on awrite-once disc. This is because it is not allowed in UDF 2.5 to useMetadata Partition with VAT, due to the difficulty to implement thiscombination.

Typically, it is also difficult to develop a new recording method for awrite-once disc. This comes from the physical characteristics such asthat the data written at once can not be overwritten, hence it would berequired to study from the several aspects, to be consistent withcomputer architecture, the possibility of implementation for driveapparatus, the restrictions due to the dedicated resource of consumerappliances, etc.

The present invention has been made in view of the above subjects andincludes an objective of providing the merits of Metadata Partition tothe data recording usage on a write-once disc.

DISCLOSURE OF THE INVENTION

A recording method for instructing a drive apparatus having apseudo-overwrite function to write data on a write-once disc accordingto the present invention includes: (a) receiving a write request whichspecifies at least data for a file to be written; (b) instructing thedrive apparatus to read metadata for managing the file from a locationin the write-once disc, so as to obtain the metadata; (c) querying anext writable address indicating a location at which data is to bewritten next to the drive apparatus, so as to obtain the next writableaddress; (d) updating the metadata to reflect the writing of the dataspecified by the write request; (e) instructing the drive apparatus towrite the data specified by the write request to a location indicated bythe next writable address in the write-once disc; and (f) instructingthe drive apparatus to write at least a part of the updated metadata tothe location from which the metadata is read in the step (b) in thewrite-once disc.

In one embodiment of the present invention, the steps (e) and (f) areperformed using the same write instruction.

In one embodiment of the present invention, the step (f) is performedafter the step (e) is performed.

In one embodiment of the present invention, the updated metadataincludes a file entry of a directory under which the file is recorded.

In one embodiment of the present invention, the updated metadataincludes a file entry of the file.

According to another aspect of the present invention, a systemcontroller is provided for instructing a drive apparatus having apseudo-overwrite function to write data on a write-once disc, the systemcontroller including a controller for controlling the drive apparatus,wherein the controller is configured to perform a process including thesteps of: (a) receiving a write request which specifies at least datafor a file to be written; (b) instructing the drive apparatus to readmetadata for managing the file from a location in the write-once disc,so as to obtain the metadata; (c) querying a next writable addressindicating a location at which data is to be written next to the driveapparatus, so as to obtain the next writable address; (d) updating themetadata to reflect the writing of the data specified by the writerequest; (e) instructing the drive apparatus to write the data specifiedby the write request to a location indicated by the next writableaddress in the write-once disc; and (f) instructing the drive apparatusto write at least a part of the updated metadata to the location fromwhich the metadata is read in the step (b) in the write-once disc.

In one embodiment of the present invention, the controller includes asemiconductor integrated circuit.

According to another aspect of the present invention a program isprovided for use in a system controller for instructing a driveapparatus having a pseudo-overwrite function to write data on awrite-once disc, wherein the program is configured to perform a processincluding the steps of: (a) receiving a write request which specifies atleast data for a file to be written; (b) instructing the drive apparatusto read metadata for managing the file from a location in the write-oncedisc, so as to obtain the metadata; (c) querying a next writable addressindicating a location at which data is to be written next to the driveapparatus, so as to obtain the next writable address; (d) updating themetadata to reflect the writing of the data specified by the writerequest; (e) instructing the drive apparatus to write the data specifiedby the write request to a location indicated by the next writableaddress in the write-once disc; and (f) instructing the drive apparatusto write at least a part of the updated metadata to the location fromwhich the metadata is read in the step (b) in the write-once disc.

These and other advantages of the present invention will become apparentto those skilled in the art upon reading and understanding the followingdetailed description with reference to the accompanying figures.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram illustrating a configuration of areas when a file isrecorded.

FIG. 2 is a diagram illustrating a configuration of areas when a Data-Afile is recorded in a root directory of a disc having the state as shownFIG. 1.

FIG. 3 is a diagram illustrating a configuration of areas when a Data-Afile is recorded in a root directory on a disc which having a largerspare area.

FIG. 4 is a flowchart illustrating a procedure for recording a file.

FIG. 5 is a diagram illustrating an optical disc informationrecording/reproduction system.

FIG. 6 is a diagram illustrating transfer of commands between a driveapparatus and a system controller.

FIGS. 7A-7D each comprise a diagram illustrating the blocks in a userdata area, when the data is remapped for a rewritable disc case andwrite-once disc case.

FIGS. 8A and 8B each comprise a diagram illustrating the blocks in auser data area, when the data is written to NWA.

FIG. 9 is a diagram illustrating the data structure of the remappingtable.

FIG. 10 is a diagram illustrating a configuration of areas to explain apseudo-overwrite method.

FIGS. 11A and 11B each comprise a flowchart illustrating a procedure towrite the data by an optical disc information recording/reproductionsystem.

FIG. 12 is a diagram illustrating an optical disc informationrecording/reproduction system which is a part of consumer video recorderor consumer video player.

FIG. 13 is a flowchart illustrating a procedure to write the data on awrite-once optical disc by the recording/reproduction system explainedin FIG. 12.

FIG. 14 is a flowchart illustrating a procedure to read the data from awrite-once optical disc by the recording/reproduction system explainedin FIGS. 5 and 12.

FIG. 15A-15D each comprise a diagram illustrating the blocks in a userdata area, when the data is written using a pseudo-overwrite method.

FIGS. 16A-16C each comprise an example of track layouts after logicalformat, and after some files are recorded.

BEST MODE FOR CARRYING OUT THE INVENTION

An overwritable function for a write-once disc performed by driveapparatus has been studied. However, it was difficult to put it inpractice, because the drive apparatus cannot know how much data will beoverwritten and where the data will be overwritten.

For example, the data to be overwritten is stored in the other locationas a write-once disc, and the information to specify the originallocation and the replacement location have to be handled in the driveapparatus. When the amount of overwritten data increases, it takes alonger time to search where it is replaced. Hence, such a driveapparatus could not read/write with enough performance due to its smallresources (e.g. CPU speed and memory).

It is believed the new file system should distinguish the data to beoverwritten and the data to be newly written, and the new file systemcan match with the drive apparatus which has an overwritable function.Then, the possibility to apply Metadata Partition for data appendingusage on a write-once disc, without using VAT is found.

The strategic importance of this idea includes; by having the devicehandle the overwriting of existing blocks, the file system does not needto implement the logic. This reduces the complexity of the file systemdriver.

In the following embodiments, the investigations based on this idea areshown in detail.

Embodiment 1

The amount of the overwritten data can be reduced by optimizing theprocedure in the file system. In this embodiment, the basic read/writeoperation is explained in accordance with the new recording method forthe drive apparatus with the overwritable function of a write-once disc.

Hereinafter, embodiments of the present invention will be described withreference to the drawings.

FIGS. 1 and 2 are diagrams showing a configuration of areas. FIG. 4 is aflowchart showing a procedure for recording a file. FIG. 1 shows thestate where a file has been recorded after a logical format operation.FIG. 2 shows the state where a Data-A file has been recorded in a rootdirectory on a disc having the state of FIG. 1.

Firstly, FIG. 1 will be described.

The data area includes the areas such as a Lead-in area, a volume spaceand a Lead-out area, (wherein the Lead-in area and the Lead-out area aremanaged by a physical layer). The physical sector is an addressable unitin the data area and the physical sector number is assigned in ascendingsequence to each physical sector. The volume space consists of logicalsectors and a logical sector number is assigned in ascending sequence toeach logical sector. Each logical sector corresponds to the physicalsector uniquely in advance. For example, the logical sector with alogical sector number 0 corresponds to the physical sector with physicalsector number 10000 and the start address of the volume space is storedin the Lead-in area.

The defect Management Area (DMA) is an area, in which informationindicating the correspondence between the address of a block to bereplaced and the address of a replaced block in a replacement operation,is recorded as a defect list.

Temporary DMA (TDMA) is an area, in which a temporary defect list isrecorded in an incremental write operation. When a disc is finalized toprohibit incremental write operations, a temporary defect list isregistered as a defect list in DMA. DMA is provided in two portions of adisc, i.e., at an inner portion and at an outer portion. Thus, a defectlist is recorded in different areas twice. In DMA, disc information,such as track information, positional information of a spare area, andthe like, are recorded.

The spare area is a replacement area, in which data is recorded by areplacement operation, which is equivalent to a linear replacementmethod. The spare area is assigned outside a volume space which ishandled by a file system. In this example, data has been recorded in aportion of the spare area. Addresses in the spare area are inherentlyspecified by using physical addresses. To simplify the explanation,relative addresses in the spare area are indicated by SA's (Spare areaAddress). Sectors on and after SA #m are in the unrecorded state.

In the present invention, the linear replacement algorithm which isgenerally used for defect management is applied to overwriting performedby the drive apparatus.

The volume space consists of three tracks. A track is an area in whichthe data is recorded sequentially from the beginning of the track on awrite-once disc. The end of recorded area in a track is managed by adrive apparatus. Track Status (Close and Open) indicates a status of atrack. “Close” indicates that all sectors in a track have been used fordata recording. “Open” indicates that there is a sector(s), which hasnot been used for data recording. In other words, data can beincrementally written into an open track.

(Volume Structure)

The volume and file structure complies with UDF 2.5. A volume structure,which is located at an area having a smaller logical sector number,includes Anchor Volume Descriptor Pointer, Volume Recognition Sequence,Volume Descriptor Sequence, and Logical Volume Integrity Sequence. Avolume structure, which is located at an area having a larger logicalsector number, includes Anchor Volume Descriptor Pointer and VolumeDescriptor Sequence. The Logical Volume Integrity Sequence, in which aLogical Volume Integrity Descriptor is recorded, is a part of a volumestructure. However, for convenience of explanation in this example, theLogical Volume Integrity Descriptor is explicitly described under thevolume structure. Since the volume structure has been previouslyrecorded, Tracks #1 and #3 are in the close state. The area described asTrack #2 is assigned as a partition specified by UDF. The Metadata fileis also called a Metadata partition. To distinguish it from the Metadatapartition, Track #2 area is called a physical partition. In the Metadatafile, an unused area is recorded in advance. Track #2 is an area forrecording file data. Therefore, an area following the recorded area isin the unrecorded state.

(File Structure)

Metadata Bitmap FE (Metadata Bitmap file File Entry) is a file entry fororganizing the areas allocated for a Metadata Bitmap. Metadata Bitmap isa bitmap for specifying available sectors which are ready for use in aMetadata file. Not only unrecorded areas, but also an area which becomesan unused area by deleting a file entry or a directory, are registeredin the bitmap as available areas. Metadata file FE (Metadata file FileEntry) is a file entry for organizing the areas allocated for a Metadatafile. In a Metadata file, file entries and directories are recorded. InUDF, a File Set Descriptor is also recorded, which is not shown in thefigure.

Root directory FE (root directory file entry) is a file entry fororganizing the areas allocated for the root directory. A root directoryFE is recorded in MA #i. A root directory is recorded in MA #i+1. Thoughnot shown, the root directory FE and the root directory are actuallystored physically in sectors in the spare area. Information indicatingwhich sector in the spare area replaces a root directory FE and a rootdirectory is recorded in TDMA. MA (Metadata file Address) indicates arelative address within a Metadata file. Since a file(s) have beenpreviously recorded, areas on and after MA #k are available.

(File Recording Procedure)

An exemplary procedure for recording a Data-A file onto the write-oncedisc of FIG. 1 will be described with reference to FIGS. 2 and 4.

In step S101, the Metadata Bitmap is read into a memory and is updatedin the memory to obtain a recording area in the Metadata file.

In step S102, a directory, under which a file is to be registered, isread into the memory, and is updated in the memory. In this example, theroot directory is read out, and the Data-A file is registered.

In step S103, the file entry of the directory is read into the memory,and information (e.g., size and update time, etc.) of the directory isupdated.

In step S104, the Data-A file data is recorded from the beginning of theunrecorded area in Track #2.

In step S105, in order to register the positional information of therecorded data, the file entry of the file is generated in the memory.

In step S106, the data updated or generated in the memory is recorded.In the example of FIG. 2, a drive apparatus is instructed to record theMetadata Bitmap file in the same place. Since the specified area is analready-recorded area, the drive apparatus records data at SA #m, whichis the beginning of the unrecorded area in the spare area. It isinstructed that the root directory is recorded at MA #k. Therefore, theroot directory recorded at MA #i+1 becomes invalid, and the sector at MA#i+1 becomes an available sector in a logical space. Even if it isinstructed that data is recorded into an available area in the Metadatafile, the data cannot be recorded into the area, since the all area inthe Metadata file is already recorded in advance. Therefore, the data ofthe root directory is recorded into SA #m+1 in the spare area by areplacement operation.

The replacement operation is a pseudo-overwrite operation of the presentinvention. As used herein, the term “pseudo-overwrite operation” refersto a logical overwrite operation, in which the mechanism of areplacement operation is used to write the data into the unrecorded areain response to an instruction to write the data into an already recordedarea.

It is instructed that the file entry of the root directory is writteninto MA #i. In this case, MA #i is an already-recorded area. Therefore,the data is stored into SA #m+2 in the spare area by a pseudo-overwriteoperation. It is instructed that the file entry of the Data-A file iswritten into MA #k+1. The data is stored into SA #m+3 by apseudo-overwrite operation.

In step S107, it is instructed that the Logical Volume IntegrityDescriptor is updated to indicate the integrity state of the filestructure. The data is stored into SA #m+4 by a pseudo-overwriteoperation.

As described in step S106, by recording a plurality of pieces of datatogether so that as many of the pieces of data as possible are recordedin the same ECC block (recording timing) by using a cache, it ispossible to effectively utilize an unrecorded area in the spare area.Particularly, a Metadata Bitmap or a Logical Volume Integrity Descriptormay not be updated every time a file is recorded. By recording theMetadata Bitmap or the Logical Volume Integrity Descriptor after aplurality of files have been recorded, it is possible to effectively usean unrecorded area of the spare area.

FIG. 5 shows an optical disc information recording/reproduction system500 according to the present invention. The informationrecording/reproduction system 500 includes a system controller 510, adrive apparatus 520 for reading and writing information from and onto anoptical disc, and an input/output bus 530.

Between the system controller 510 and the drive apparatus 520,instructions and responses using a command set and transfer of theread/write data are performed through the input/output bus 530.

The system controller 510 includes a controller 511 and a memory 512.The system controller 510 may be a personal computer. The controller 511may be, for example, a semiconductor integrated circuit such as a CPU(Central Processing Unit) and performs the method described in theembodiments of the present inventions.

Further, a program for causing the controller 511 to perform the methoddescribed in the embodiments is stored in the memory 512. In thecontroller 511, a file system, a utility program, or a device driver maybe performed.

The drive apparatus 520 includes a system LSI 521, a memory 522 and adrive mechanism 523. A program for causing the system LSI 521 to performthe method described in the embodiments of the present inventions may bestored in the memory 522. The system LSI 521 may be formed on asemiconductor chip and may include a micro processor.

The drive mechanism 523 includes a mechanism for loading an opticaldisc, a pickup 524 for writing/reading the data from/onto a disc, atraverse mechanism for moving the pickup 524. The drive mechanism 523 iscontrolled by the system LSI 521.

As explained above, the data of a file can be recorded without beingoverwritten, some of metadata can be recorded using pseudo-overwrite.Typically, the size of metadata needed to update a file is smaller thanthe data size of the file, and then the size of data to be overwrittencan be reduced. The size of a file entry is 2048 bytes, and the size ofa directory depends on the number of files and the length of the filename. As an example, if each file name is 12 characters and 39 files arerecorded in the directory, the directory information can be recordedwithin a sector of 2048 bytes. Therefore, the read/write operation canbe realized basically for a write-once disc by combining the newrecording method and the drive apparatus with the overwritten function.

Embodiment 2

This embodiment describes a further recording method to write a fileonto a write-once disc on which the state is explained in embodiment 1as FIG. 2.

In FIG. 2, the unrecorded area is only 2 sectors of SA #m+5 and #m+6,therefore, if the Metadata Bitmap and the root directory are written inthe spare area, a file entry of the root directory, and a file entry ofthe file can not be written any more. Thus, an additional file can notbe recorded, even if the Metadata Bitmap indicates available areas inthe Metadata file, because the unrecorded area in the spare area is usedup.

So, hereinafter a recording method to record the file with checking thesize of unrecorded areas in the spare area is described.

FIG. 3 is a diagram illustrating a configuration of areas on the disc onwhich the same data as shown in FIG. 2 is written. In FIG. 3, as a sparearea with the larger size has been provided by a logical formattingoperation, the spare area has a larger unrecorded area than that of FIG.2.

FIG. 6 is a diagram illustrating data transfer with commands between adrive apparatus and a system controller. Specific commands can beapplied to standards defined by ANSI (American National StandardsInstitute) or Multi-Media Command Set Standards defined by the INCITS(Inter National Committee for Information Technology Standards) T10.

Steps S601, S603, S605, and S607 indicate procedures performed by thesystem controller. Steps S602, S604, S606, and S608 indicate proceduresof the drive apparatus.

In step S601, the type of a medium loaded into the drive apparatus isrequested from the system controller and the system controllerrecognizes the media is the write-once pseudo-overwritable disc andrecognizes that the drive apparatus supports the pseudo-overwritefunction.

In step S602, the drive apparatus reads out information of the type ofthe loaded disc. The drive apparatus also determines whether or not thepseudo-overwrite function is supported with respect to the disc. Thedrive apparatus informs the system controller of these pieces ofinformation.

In step S603, by requesting the track information of a write-once disc,the system controller obtains the information from the drive apparatus.Specifically, the size of an unrecorded area in Track #2, and the nextwritable address in the track or the last recorded address in the trackare requested. In order to write the data of the file, it is necessaryto get the above-described information in advance, and it is checkedwhether or not the unrecorded area has a prescribed size or more. Sincein Track #2 additional Metadata file may be allocated, for example, theprescribed size may be 128 MB for the disc of a whole capacity with 23GB. If the size of the unrecorded area is less than the prescribed size,the disc is used as a read-only disc. If the size is equal to or greaterthan a prescribed size, the procedure goes to the next step. The size ofa file entry is 2 KB. When only file entries are recorded in anavailable area of 128 MB, file entries corresponding to 65,536 files atmost can be recorded.

In step S604, the drive apparatus reads the information related with thenumber of tracks, the positional information and the open/close state ofeach track, or the last recorded address information, from the lead-inarea, DMA, or TDMA of the loaded disc. The system controller is informedof these pieces of information.

In step S605, the drive apparatus is instructed to read the MetadataBitmap area. As a result, the system controller obtains the MetadataBitmap, and it is checked whether or not there are available sectors.When there are available sectors, the procedure goes to the next step.When there are no available sectors, an additional area for a Metadatafile is assigned in the unrecorded area of Track #2 to reserve theavailable sectors. In this checking, the system controller may determinewhether the additional area for a Metadata file is reserved or not, byusing the prescribed size for the available sectors, for example, theprescribed size may be 128 KB.

In step S606, the drive apparatus reads data from the specified area,and transfers the data to the system controller.

In step S607, by requesting spare area information to the driveapparatus, the system controller obtains the information and checkswhether or not there is an unrecorded area in the spare area having aprescribed size or more.

For example, when the size of the unrecorded area is equal to or greaterthan 8 MB, the disc is usable as a recordable disc. When the size isless than 8 MB, the disc is used as a read-only disc. The spare area isused not only for pseudo-overwrite, but also for defect management.Therefore, an additional unrecorded area is needed to recover defectivesectors on the disc.

In step S608, the drive apparatus reads the number of spare areas, thesize of spare areas, and the size of an unrecorded area in each sparearea, from the lead-in area, DMA, or TDMA of the loaded disc. The systemcontroller is informed of these pieces of information.

As described above, the data is recorded in the unrecorded area in thespare area by pseudo-overwrite or defect management. The write-once discdrive apparatus of the present invention has a function to send the freearea information as well as the type information of a medium to a systemcontroller, because the drive apparatus stores the data at some locationwhich may be different from the location the file system expects. Byrequesting this free area information whenever a file is recorded, thesystem controller decides whether the file can be recorded or not, as aresult, the system controller can record a file correctly with therelated data in the Metadata file.

Embodiment 3

In the previous embodiment 2, the spare area with sufficient size has tobe assigned at the time of formatting on a write-once disc. However, auser cannot know how many files and the size of the files that will berecorded on the disc, therefore, it is difficult to decide theappropriate size of the spare area at the time of formatting. If all ofthe spare area is used, no file can be recorded on the disc, even if theunrecorded area remains in the user data area. On the other hand, if alarger spare area is assigned, after all of the user data area is used,unrecorded area may remain in the spare area.

Further, a file system driver has to check the size of the unrecordedarea in the spare area each time when a file is recorded, hence thespace management becomes difficult to implement. This is not suitablefor the implementation of file system driver of computer systems.

So, hereinafter a recording method in which the direction to replace thedata not only within the spare area but also within the user data areais explained.

At first, an idea of the present invention is described:

Devices handle the overwriting of existing data by writing the new datato the next writable block and creating an entry in a remapping tablestored by the drive apparatus. The file system continues to use the samelogical block number, and the drive apparatus remaps the request to thenew location based on the entry in the table. In order to reduce thesize of this table, the file system does not reuse blocks after they arefreed. That is, the file system has to be aware that it is usingwrite-once media, and adjust its behavior accordingly.

The device uses the normal volume space to store the remapped data. Thatis, it is writing to the next writable location within the same trackthat the original block exists. The file system queries the device forthe next writable block whenever it needs to allocate new space. So boththe file system and the device are sharing the same space for writes.

Secondly, the effectiveness of the above idea is described using FIGS.7A-7D, 8A-8B and 9:

FIGS. 7A-7D and 8A-8B show the blocks in a user data area. Herein, theblock is used rather than the sector to explain the idea generally. Theuser data area is recognized as a volume space by the file system. Foreach block, a Physical Block Address (hereafter described as PBA) and aLogical Block Address (hereafter described as LBA) are assigned so thatthe correspondence between PBA and LBA are decided in advance, whereinas an example, PBA is assigned from the number 100 and LBA is assignedfrom the number 0.

FIG. 9 shows the data structure of the remapping table stored by thedrive apparatus. The table has entries, each of which specify theoriginal address and remapping address. This data structure may be thecommon data structure with the defect list which is used for defectmanagement for rewritable discs.

Typically, it had seemed that the above idea was not effective, becausethere are contradictions when applied for rewritable discs.

As shown in FIG. 7A, a rewritable disc has a spare area, in which a PBAis assigned form the number 200, for example. In a usual case for arewritable disc, if the data are written to the blocks of LBA 2 and 5and these blocks are defective, these data are stored into the blocksPBA 200 and 201 in the spare area using a linear replacement algorithm.This means LBA 2 and 5 is re-assigned to PBA 200 and 201. Thus, whensome block in the volume space becomes an unusable block due to defect,it is compensated with a good block in the spare area.

If the above idea would be applied to a rewritable disc, as shown inFIG. 7B, the data to write LBA 2 and 5 are stored into the blocks in auser data area, for example, PBA 103 and 107. However, these remappedblocks of PBA 103 and 107 cannot be used to store the data requested toLBA 3 and 7, as these blocks are replaced as LBA 2 and 5. This situationbreaks the assumption to provide a defect free logical space, in whichthe assumption that the data capacity on the rewritable disc shall notbe reduced, when any data is recorded by the file system. Further, inthis situation, the drive apparatus could not decide the location toremap the data, because the file system may write the data randomly andonly the file system handles the space bitmap which specifies theavailable area for recording.

As explained embodiment 1, the linear replacement algorithm can also beapplied to write-once discs. As shown in FIG. 7C, the spare area isassigned for the write-once disc in advance. If the block is overwrittenor can not be written due to a defect, the block is compensated with theblock in the spare area. As examples, when the data D1 is written to LBA2, if the block is defective, the block is compensated with the block ofPBA 200. When LBA 5 is written by the data D2, even if the PBA 105 isalready recorded, the data is stored into PBA 201.

It is supposed that a block to be overwritten and a defective blockshould be compensated with another block which belongs to outside of thevolume space. This idea seems to be a contradiction not only forrewritable discs, but also for write-once discs.

However, according to the present invention, write-once discs may notguarantee to provide defect free logical space like rewritable discs,because if a block on a write-once disc is written once, it is notpossible to change the data in the block. And the new file system forwrite-once discs would write the data using sequential recording. Onthis point, this idea is effective for a write-once disc as shown inFIG. 7D. The data D1, D2 and D3 are written to LBA 0, 1 and 2,sequentially, at this time if the block PBA 102 is defective, then thedata may be written to the next block PBA 103. Further, the data D4, D5and D6 are written to LBA 4, 5 and 6, sequentially, and then the updateddata D5′ may be overwritten to LBA 5. On this overwrite, the data isstored into the block PBA 107 which is the next writable location. Thus,this idea does not require changing the assignment of a logical blocknumber, because whenever the overwritten is needed, the data can bewritten to next writable location until the user data area is used up.In case of a rewritable disc, the data can not be recorded into theblock used for remapping, but there is no problem for the presentinvention of a write-once disc. For example, the data may be recordedfurther into the block of LBA 7. In this case, the data is stored in PBA108 and the entry to specify this remapping from the original address ofPBA 107 to the remapping address of PBA 108 is added in the remappingtable.

As explained above, according to the present invention, even if theLogical Block Address is double booking, the drive apparatus can recordthe data by assigning a new Physical Block Address to NWA.

Another important point to be practical to the above idea is to save theentries stored in the remapping table by querying the next writableaddress from the file system to the drive apparatus. FIGS. 8A and 8Bshow the mechanism to reduce the size of the table. In this figure,blocks PBA 100 to 105 are recorded in advance. As shown in FIG. 8A, whenthe data D1 is written to LBA 1, the data is stored in next writablelocation PBA 106 and one entry is added to specify PBA 101 is remappedto PBA 106. At this moment, the file system does not know where the datais remapped. If file system instructs to write the new data D2 to theprevious next writable location LBA 6, the data is stored to the nextblock PBA 107 and one entry is added. In the present invention, the filesystem checks the updated next writable address before any data isrecorded barring overwrite, and instruct to write the data at theupdated next writable address, of which is LBA 7 in FIG. 8B. Thus, anadditional entry is not needed. The file system will not also reallocatethe data to the deleted file area, barring the requirement to overwritefor the same reason.

Furthermore, the space management by the file system can be simplified,because the file system uses only NWA in each track to allocate the newarea for recording. This means the file system may not be checked in thespare area, and may not record the space bitmap, especially the MetadataBitmap.

The unit to remap the area may be an ECC block which consists of pluralphysical sectors. When a physical sector is remapped, all of thephysical sectors in the ECC block in which the physical sector belongsto are remapped. In this case, the original address and remappingaddress in the entry of the remapping table are specified by thephysical address of the start sector of each ECC block. As anaddressable unit, the physical block and the logical block may be thephysical sector and the logical sector. Even if one sector is newlywritten, one ECC block including the sector is written, then the NWA ismoved to the start sector of the next ECC block. Therefore, when severaldata are written, these data are allocated so that these data arewritten with the same ECC block.

By the present invention, the merits to use the Metadata Partition canbe provided for the use on the write-once disc. At first, the data to beoverwritten is remapped within the track for metadata writing, then theaccess to retrieve the metadata can be localized and the performance isimproved. As usual, the overwritten data is stored in the same track aslong as the track has unrecorded sectors. When the track is used up bydata recording, the overwritten data may be stored into the other track,as it is given the priority to write the data to the other unrecordedphysical block in the same track. Secondly, a Metadata Mirror File canbe recorded to improve the robustness, when an additional track for aMetadata Mirror File is assigned.

Herein, the potential for overwriting is estimated for the example casethat the capacity of the disc is 23 GB (=23×1024^3 bytes), the ECC blockconsists of 32 sectors, and the sector size is 2 KB (=2×1024 bytes). Ifthe average size of the files recorded on the disc is 128 KB and 10files are stored in the directory on average, about 188,000 files and18,800 directories can be recorded on the disc. When the file systemclusters the file entries to be updated into an ECC block, about 6,400entries are needed in the remapping table. The size of the table becomesabout 50 KB when the size of the entry is 8 bytes. When the driveapparatus can handle 256 KB of the remapping table as the maximum size,188,000 files and 18,800 directories would be written randomly. Thus,this invention is also practical for the next generation write-onceoptical discs using blue laser technology.

An example applying the above idea to a new file system based on UDF andthe next generation write-once disc is described.

FIG. 10 is a diagram illustrating a configuration of areas to explainthe above mentioned remapping. The area layout explained in theembodiment 1 is also used in this embodiment.

Defect Management Area (DMA) is an area in which the defect list isrecorded and Temporary DMA (TDMA) is an area, in which a temporarydefect list is recorded. The remapping table may be recorded in DMA andTDMA with the defect list and the temporary defect list. Herein, thedefect list and the temporary defect list may be used to specify boththe replacement information by defect management and the remappinginformation using the same data structure. It will help to simplify theimplementation of the drive apparatus, because the interpretation of theentry is common for defect management and for pseudo-overwrite. When theentry specifies the remapping information, the entry in the tableindicates the correspondence between the address of a block to beremapped and the address of a remapped block.

Spare areas are assigned out of a volume space, and the addresses in thespare area are indicated by SA's (Spare area Address).

The volume space comprises three tracks, in each of which the data isrecorded sequentially. The start address of the unrecorded area in thetrack is managed as Next Writable Address (NWA). The status of a trackis described by new terms: “Used” and “Reserved” in order to indicatethe data in these tracks can be overwritten and the data may be remappedwithin the reserved track. The used track means that all sectors in atrack have been used for data recording. The reserved track means thatthere is a sector(s), which has not been recorded. In other words, thedata can be incrementally written into the reserved track. Since thevolume structure has been previously recorded, Tracks #1 is a usedtrack. Track #2 is a reserved track assigned for metadata recording.Track #3 is a reserved track assigned for user data recording.

An exemplary procedure for updating Data-A file and recording Data-Bfile onto the write-once optical disc is described.

At first, the Metadata file FE is read to obtain the area allocated forthe Metadata file, wherein MA (Metadata file Address) indicates arelative address within a Metadata file.

When the file system updates the Data-A file, the file entry is read inthe memory and the file entry is updated in order to register theinformation to specify the location where the updated data will bewritten and the related information (e.g., size and updated time, etc)in the memory. The file system instructs the drive apparatus tooverwrite the data of Data-A file logically. Then the drive apparatusstores the data (Data-A′) physically to the NWA, as the correspondingphysical sector is already recorded and the drive apparatus adds theentry to the defect list. If the file system instructs to write the datato NWA after querying the drive apparatus, it is not required to add theentry in the defect list. In this invention, this manner to save theentry is recommended, because the location of the data can be registeredin the file entry. However, when a part of the large file has to beupdated, the data to be updated may be overwritten instead of writingthe whole data of the file. After the data is written on the disc, thefile system instructs to overwrite the file entry (Data-A′ FE) logicallyin order to specify the location of the written data and the updatedtime. Then the drive apparatus writes the data physically into thesector shown at MA #k+1 and stores the entry into the defect list.

When the file system newly records the Data-B file under the rootdirectory, the directory is read into the memory and the directory isupdated to add the new file (Data-B file) to this directory in thememory. Beforehand the file entry of the Data-B file is created in thememory, the data of Data-B file is written at the NWA in Track #3, andthen the file entry (Data-B FE) and the root directory on the memory arewritten from the NWA shown as MA #k+2 in Track #2. To specify the newlocation of the root directory, the updated file entry for the directoryis instructed to overwrite and the data is written at the NWA shown asMA #k+4. Thus, only the file entry of the directory among metadata isoverwritten to save the entry, and the other metadata (the file entry ofthe file and the directory) and the data of the file are written withoutoverwriting.

To indicate the integrity of the file structure, the updated LogicalVolume Integrity Descriptor is instructed to overwrite, and the data iswritten at the sector SA #m in the spare area.

In the above pseudo-overwrite operation, the data to be overwritten maybe stored within the spare area or the NWA in the reserved track inresponse to an instruction to write the data into an already recordedarea. The destination to store the data may be decided by the driveapparatus. Similarly, the data may be replaced within the spare area orthe NWA in the track by defect management, when the data can notrecorded on the sector due to defect.

In case of rewritable discs, the file system reuses the available area.However, in the present invention the available area is not reused whenthe available area is used once. For example, in FIG. 10, although thelogical sector at MA #i+1 in which the root directory was written becamethe available sector, the file system will not allocate any data at MA#i+1. If the data were written again into MA #i+1, the data would beremapped. In the case of the data being written on an ECC block basis,one ECC block is written, even if only one sector of the unrecorded ECCblock is instructed to be written and the invalid data is recorded inthe other sectors of the ECC block. The file system also will not reusethe area where the invalid data is recorded, for the same reason.

Hereinafter a write procedure of the present invention is described.This write procedure is performed by the optical disc informationrecording/reproduction system described in FIG. 5.

FIGS. 15A-15D each comprise a diagram illustrating the blocks in a userdata area, when the data is written using the pseudo-overwrite method.The user data area, PBA and LBA are the same definition as described inFIG. 7.

The procedure to update the file is described in FIGS. 15A and 15B. Asshown in FIG. 15A, before the file is updated, the blocks PBA 100, 101,and 102 are recorded. The file entry (D3) of the file to be updated isstored in the block LBA 2. As shown in FIG. 15B, the file system;

1) instructs to read the file entry from LBA 2 in advance,

2) queries the NWA to the drive apparatus,

3) instructs to write the updated data (D4) of the file into the NWA(LBA 3), so that the data is written without overwriting, and createsthe file entry (D3′) so that the positional information in the read fileentry is changed to specify the area where the updated data is written,and then

4) instructs to write the updated file entry (D3′) into LBA2 so that thefile entry is overwritten.

The procedure to record the file under the directory is described inFIGS. 15C and 15D. As shown in FIG. 15C, the blocks PBA 100, 101, 102,108 and 109 are recorded, and two tracks are reserved. The file entry(D1) of the directory and the directory (D2) are stored in blocks LBA 0and 1. As shown in FIG. 15D, the file system;

1) instructs to read the file entry of the directory and the directoryfrom LBA 0,

2) instructs to read the directory from LBA 1,

3) queries the NWA of each track to the drive apparatus in order todecide the location to write the data without overwriting,

-   -   3-1) creates the file's file entry (D6) which has the positional        information of the area allocated for the data of the file,    -   3-2) creates the directory (D7) so that the new file is        registered in the read directory (D2) and    -   3-3) creates the file entry (D1′) of the directory so that the        positional information in the read file entry (D1) is changed to        specify the area where the updated directory is allocated,

4) instructs to write the data (D5) of the file into NWA in Track #2(LBA 10),

5) instructs to write the file entry (D6) of the file from the NWA inTrack#1 (LBA3)

6) instructs to write the directory (D7) to the next address so that thedata is written continuously, and then

7) instructs to write the updated file entry (D1′) into LBA0 so that thefile entry is overwritten.

Thus, before any data is written, the file system queries the NWA. Thisis because the NWA may be changed, as the drive apparatus would writethe data with remapping on its own. Next, the file system provides aninstruction to write the data from NWA so that the data is writtenwithout being overwritten. Then, the file system instructs that theupdated data be written with overwriting. This order to write the datais important, to save the entry in the remapping table.

In the case of FIG. 15B, if the write procedure was not in this order,namely the data D3′ is overwritten before the data D4 is written, thedata D3′ would be written into PBA 103 and the NWA is changed. Thismeans the data D4 would be written with overwriting into LBA 3, but thedata would be remapped into PBA 104. In the case of FIG. 15D, if thewrite procedure were not in this order, an additional entry would beadded in the remapping table, as well.

In the case of rewritable discs, there are no such requirements.Typically, a different order is used for the rewritable disc cases toimprove the reliability, considering the recovery when a write proceduremay terminate accidentally. On the other hand, in the case of write-oncedisc such recovery is not important; rather, it is important to save theentry in the remapping table, because the previous state remains by thewrite-once feature.

FIGS. 11A and 11B each comprise a flowchart illustrating a procedure towrite the data on a write-once optical disc. This write procedure isperformed by the optical disc information recording/reproduction systemdescribed in FIG. 5.

When the file is updated, the file system will instruct to write thedata of the file so that the data is written without overwriting, andthe file system will create the file entry by updating the written fileentry and will instruct to write the file entry so that the file entryis overwritten.

When a new file is recorded under the directory, the file system createsthe file entry of the file and creates the directory and the file entryof the directory by updating the written directory and it's file entryin the memory and instructs to write the data of the file, the fileentry and the directory so that these data are written withoutoverwriting. Then the file system will instruct to write the file entryof the directory so that the file entry is overwritten.

FIG. 11A shows the steps involved in the procedure to write the data ona write-once optical disc. A program is used to implement the procedureand is executed by controller 511 contained in the system controller510. The system controller 510 instructs the drive apparatus 520 towrite the data on a write-once optical disc. The controller 511 mayinclude a semiconductor integrated circuit. The program is provided invarious manners. For example the program may be provided in a form of acomputer readable medium having the program recorded thereon.Alternatively, the program may be provided by downloading the programfrom a server via the internet. Once the program is installed into acomputer, the computer functions as the system controller 510.

FIG. 11B shows the procedure performed by the drive apparatus 520.

In step S1101, the system controller 510 receives a write request whichspecifies at least data for a file to be written from the user. Forexample, the request is to replace Data-A file as new data or to copyData-B file from the other media to under the root directory on thisdisc. The data to be written is transferred to the memory 512 in thesystem controller 510 and the destination to record the data isindicated by the pathname in the directory tree structure.

In step S1102, the controller 511 instructs the drive apparatus 520 toread the metadata for managing the directory or file which is requestedby user. The metadata such as file entry and directory are read from theMetadata File.

In step S1103, the controller 511 queries a next writable address NWA,which indicates a location at which data is to be written next, to thedrive apparatus 520 before it instructs the drive apparatus 520 to writethe data, because there is a possibility that the drive apparatus 520will move the NWA. The drive apparatus 520 sends the queried NWA to thesystem controller 510 and the system controller 510 sends the NWA to thecontroller 511.

In step S1104, in response to the user write request, the controller 511creates or updates at least a part of the metadata so that the dataamount to be overwritten is minimized by distinguishing the type of thedata to be written. As described in the explanation for FIG. 10, in thecase of a file is updated, the file system creates the file entry tospecify the location of the data to be written. This file entry is thedata to be overwritten. In the case a new file is recorded under thedirectory, the file system creates the file entry of the new file andupdates the directory to register the new file and the file entry of thedirectory. The file entry of the directory is the data to be overwrittenand the other metadata is the data which can be written without beingoverwritten. As examples of the updated metadata, the updated metadatamay include a file entry of a directory under which the file isrecorded, or a file entry of the file

In step S1105, the controller 511 instructs the drive apparatus 520 towrite the data, which is not needed to be overwritten, at a locationindicated by the NWA.

In step S1106, the controller 511 instructs the drive apparatus 520 towrite at least a part of the updated metadata at the location from whichthe metadata was read so that the data is overwritten on the logicalsector. In step S1105 and S1106, the same write command can be used toinstruct to write the data, because the drive apparatus 520 candetermine whether the data should be written with overwrite or withoutby checking the status of the logical sector in step S1111. In stepsS1105 and 51106 data is written to different addresses which areindicated in different manners, for example, step S1105 writes the dataspecified by a user write request (step S1101), while set S1106 writesthe metadata which has been read (step S1102). To avoid possible errorsstep S1106 is performed after step S1105.

In step S1111, the drive apparatus 520 receives the write command, whichspecifies at least a logical sector in which the data is to be written,from the controller 511 and determines whether the physical sector towhich the logical sector corresponds in advance is recorded or not. Inthis check, the drive apparatus 520 judges the state of the physicalsector using the logical sector number which is instructed to write bythe controller 511. When the logical sector number is smaller than theNWA, the physical sector is recorded, or else unrecorded. If thephysical sector is unrecorded, go to S1112, else (if recorded) go toS1113.

In step S1112, the drive apparatus 520 writes the data to the physicalsector that corresponds to the logical sector in advance.

In step S1113, the drive apparatus 520 writes the data to the otherunrecorded physical sector. When the data is remapped on an ECC blockbasis, the other unrecorded physical sector is one of the sectorsbelonging to the ECC block which is the next writable block. Forexample, in case the ECC block consists of 32 sectors, the second sectorin the ECC block is instructed to be overwritten, the data is physicallywritten into the second sector in the next writable ECC block. Thus therelative address within the ECC block is kept for the remapped ECCblock.

In step S1114, the drive apparatus 520 creates the entry as theremapping information to specify the original address related with thephysical sector corresponding to the logical sector in advance and theremapping address related with the physical sector in which the data iswritten, and stores the remapping information to the defectlist/remapping table. In case the ECC block consists of 32 sectors, theoriginal address is the start address of the ECC block to which theoriginal physical sector belongs and the remapped address is the startaddress of the ECC block to which the remapped physical sector belongs.

When this invention is applied to the recording/reproduction system suchas a consumer video recorder or a consumer video player, the file systemand the drive apparatus may be controlled by the common micro processoras shown in FIG. 12. In this case, the file system may not query the NWAto the drive apparatus, because the recording/reproduction system knowsthe NWA. At first, the NWA in each track is checked when the disc isloaded in the drive unit, then this system can manage the NWA after somedata is written.

FIG. 12 shows an optical disc information recording/reproduction system1200 which is a part of a consumer video recorder or a consumer videoplayer. The information recording/reproduction system 1200 includes acontroller 1211, a memory 1212 and a drive mechanism 523 for reading andwriting information from and onto an optical disc. The controller 1211may be, for example, a semiconductor integrated circuit such as a CPU(Central Processing Unit) and performs the method described in theembodiments of the present inventions. Further, a program for causingthe controller 1211 to perform the method described in the embodimentsis stored in the memory 1212. In the controller 1211, a file system, autility program, or a device driver may be performed. The drivemechanism 523 may be controlled by the controller 1211.

FIG. 13 is a flowchart illustrating a procedure to write the data on awrite-once optical disc by the recording/reproduction system explainedin FIG. 12.

In step S1301, the controller 1211 receives the request from the user.For example, the request is to replace Data-A file as new data or tocopy Data-B file form the other media to the root directory on thisdisc. The data to be written is transferred to the memory 1212 and thedestination to record the data is indicated by the pathname in thedirectory tree structure.

In step S1302, the file system read the data to retrieve the directoryor file which is requested by user. The metadata such as file entry anddirectory are read from the Metadata File.

In step S1303, the file system gets the NWA before writing the data.

In step S1304, in response to the user requests, the file system createssome of the metadata so that the data amount to be overwritten isminimized by distinguishing the type of the data to be written. Asdescribed in the explanation for FIG. 10, in the case of a file beingupdated, the file system creates the file entry to specify the locationof the data to be written. This file entry is the data to beoverwritten. In the case of a new file being recorded under thedirectory, the file system creates the file entry of the new file andupdates the directory to register the new file and the file entry of thedirectory. The file entry of the directory is the data to be overwrittenand the other data is the data which can be written without beingoverwritten. The data type is distinguished as type I: no need to beoverwritten and type II: needs to be overwritten.

In step S1305, the file system instructs to write the type I data intothe logical sector from the NWA. Then, go to step S1311 which is theoperation to write the data of type I.

In step S1306, the file system instructs to write the type II data intothe logical sector. Then go to step S1321 to perform the operation tooverwrite the data in the logical sector. The write command instructedto write the data may be different for type I and II.

In step S1311, the data is written to the physical sector whichcorresponds to the logical sector in advance.

In step S1321, the data is logically overwritten in the logical sectorand physically written into the other unrecorded physical sector,especially to the NWA.

In step S1322, the entry as the remapping information is created tospecify the original address of the physical sector corresponding to thelogical sector in advance and the remapping address of the physicalsector in which the data is written, and is stored to the defect list.

The reproduction procedure from the write-once disc on which disc thedata is written using the above explained methods FIGS. 11A, 11B and 13is explained hereinafter. FIG. 14 is a flowchart illustrating aprocedure to read the data from a write-once optical disc by therecording/reproduction system explained in FIGS. 5 and 12. Wherein, therecording/reproduction system receives a read instruction whichspecifies at least a logical sector from which data is to be read.

In step S1401, the original addresses of all entries stored in theremapping table are searched. As the logical sector number to be read isinstructed, the physical sector number which corresponds to the logicalsector in advance is used to search the entry which indicates thephysical sector is remapped. When the remapping is performed on an ECCblock basis, the start address of the ECC block is registered in theentry. In this case, it is checked whether the physical sector numberbelongs to the remapped ECC block or not. This operation may be done bya drive apparatus in case of an Information recording/reproductionsystem as described in FIG. 5.

In step S1402, if the entry is found, go to step S1403, else step S1404.

In step S1403, the original address of the physical sector is replacedwith the remapping address of the physical sector, which is indicated inthe found entry. If the entry is not found in step S1402, then theaddress to be read is determined as the address of the physical sectorcorresponding to the logical sector specified by the read instruction.If the entry is found in S1402, then the address to be read isdetermined as the remapping address corresponding to the originaladdress found in the remapping table.

In step S1404, the data is read at the determined address.

As explained above, when the address is not found, the data is read fromthe physical sector corresponding to the logical sector in advance,because the remapping table shows the data stored in the logical sectoris not remapped to the other physical sector.

When the address is found, the data is read from the physical sectorspecified by the remapping address in the found remapping information,because the entry found in the remapping table shows the data stored inthe logical sector is remapped.

If the data is remapped within the volume space, especially to the NWAin the track rather than into the spare area, the data can be read outmore quickly.

As described in the above embodiments, this invention can be applied tothe drive apparatus on the assumption that the file system minimizes thedata amount to be overwritten and the file system instructs to write thedata to unrecorded sector by querying the drive apparatus, when the datais written without being overwritten.

Embodiment 4

In this embodiment, as an example, guidelines and requirements aredescribed for the UDF file system implementation.

(Benefits to Using A Pseudo-Overwrite Method)

In order to reduce complexity due to physical characteristics, newsequential recording media with overwritable features are introduced aspseudo-overwritable media. The pseudo-overwrite method is applied tothis pseudo-overwritable media. The following sets forth some of thebenefits of introducing the new sequential recording media:

1) An overwritable volume space and a defect free space are provided,similar to a rewritable media. In other words, compatibility due towrite-once media is ensured by a drive unit which supports anoverwritable mechanism and defect management.

2) Session close and Border close are not necessary, as a read-onlydrive unit supporting Pseudo-overwrite media has access to an unrecordedarea.

3) Metadata Partition and its mirror can be used.

(Characteristics of Pseudo-Overwritable Media)

The physical characteristics of pseudo-overwritable media are describedfrom the viewpoint of what is required by the file system driver.

Pseudo-overwritable media supports multi-track recording and anoverwritable function for the logical sectors in a volume space. Morethan one track can be used to record. A new track can be assigned as areserved track. A sequential recording mode is to be used within atrack, to simplify the space management. The pointer to the recordablearea is Next Writable Address (NWA), which is obtained through aninquiry of a drive apparatus.

When the data is intended to be recorded on the recorded logical sector,the data is recorded either within the Spare Area by a linearreplacement algorithm, or to NWA within the volume space. As a benefitof remapping the data to NWA within the volume space, all availablemedia capacity can be used, even if all of the Spare Area is recorded. Aread modify write operation is also supported, therefore, each logicalsector can be overwritten separately.

The address information where the data is replaced or remapped from theoriginal address is stored as a defect list entry of volume space andmanaged by a drive apparatus.

(Write Strategy by the File System)

In general, a track can be assigned by considering the data type to berecorded; for example, metadata or specific data such as audio/visualdata, still picture data, music data and so forth. On multi-trackrecording, when a reserved track is used up, a new track is assigned,adaptable to the amount of recorded data. The track for metadatarecording is explicitly indicated as an extent of a Metadata File or aMetadata Mirror File.

If pseudo-overwrite media has the restriction that a new track can notbe assigned after a track is assigned at the end of the volume space,multi-track recording is used in an intermediate state in which only oneAVDP is recorded at LSN 256. According to ECMA 167 requirements, theAVDP shall be recorded in at least two of three locations (i.e. LSN 256,LSN—256 and Last LSN). In this example, the track is assigned to recordAVDP at Last LSN—256 or Last LSN.

A Metadata Mirror File can be also used. It is recommended to create aMetadata Mirror File when the disc is stored for archiving. In case ofonline usage, the implementation is to record such that the contentsrecorded in a Metadata File and a Metadata Mirror File have the sameoffset in each file, although the offset of NWA in each track sometimesmay not be the same due to the recording condition of each track.

FIG. 16A shows an example of a track layout after a logical format. Afirst volume structure including AVDP at LSN 256 and the related filestructure is recorded. Then, a track is assigned for metadata recording,and the metadata is recorded in the track. The remaining area in thevolume space is used for file data recording.

FIG. 16B shows an example of a track layout after some files arerecorded. After the first track is used up, a new track is assigned.Thus, additional tracks may be assigned one after another.

FIG. 16C shows another example of a track layout after some files arerecorded. When the track for metadata recording is used up, anadditional area for Metadata File may be allocated in the data track asan extent, not a track.

(Requirements for File System)

Requirements for pseudo-overwrite method are listed as follows:

1) Implementations are to recognize Pseudo-overwritable media byinquiring to the drive unit.

2) An Unallocated Space Bitmap and an Unallocated Space Table shall notbe recorded.

3) A Metadata Bitmap File shall not be recorded.

4) Implementation should query for NWA in each track prior to writingadditional data. If a write command is issued to an already-recordedarea, the defect list entry is used. Therefore, this requirement isimportant to reduce an unnecessary defect list entry, as the size ofdefect list is limited.

5) Deleted blocks should not be reused to query NWA for the same reason.

6) The metadata to be overwritten should be minimized. It is recommendedthat only the directory File Entry should be overwritten.

INDUSTRIAL APPLICABILITY

The present invention is useful to provide a recording method for awrite-once disc using a logical overwritable mechanism, and asemiconductor integrated circuit for use in the recording apparatus orthe reproduction apparatus.

The invention claimed is:
 1. A recording method for instructing a driveapparatus having a pseudo-overwrite function to write data on awrite-once disc, the recording method comprising the steps of: (a)receiving a write request which specifies at least data for a file to bewritten; (b) instructing the drive apparatus to read metadata formanaging the file from a location in the write-once disc, so as toobtain the metadata; (c) querying a first next writable addressindicating a location at which data is to be written next to the driveapparatus, so as to obtain the first next writable address; (d) updatingthe metadata to reflect the writing of the data specified by the writerequest; (e) instructing the drive apparatus to write the data specifiedby the write request to a location indicated by the first next writableaddress in the write-once disc; (f) instructing the drive apparatus towrite at least a part of the updated metadata to the location from whichthe metadata is read in the step (b) in the write-once disc, wherein thedrive apparatus obtains a second next writable address and when thelocation from which the metadata is read is smaller than the second nextwritable address, records the updated metadata at a location indicatedby the second next writable address, and (g) updating a remapping tableto include an entry which specifies a physical address corresponding tothe location from which the metadata is read and a new physical addresswhere the updated metadata is written.
 2. A recording method accordingto claim 1, wherein the steps (e) and (f) are performed using the samewrite instruction.
 3. A recording method according to claim 1, whereinthe step (f) is performed after the step (e) is performed.
 4. Arecording method according to claim 1, wherein the updated metadataincludes a file entry of a directory under which the file is recorded.5. A recording method according to claim 1, wherein the updated metadataincludes a file entry of the file.
 6. A system controller forinstructing a drive apparatus having a pseudo-overwrite function towrite data on a write-once disc, the system controller comprising acontroller for controlling the drive apparatus, wherein the controlleris configured to perform a process including the steps of: (a) receivinga write request which specifies at least data for a file to be written;(b) instructing the drive apparatus to read metadata for managing thefile from a location in the write-once disc, so as to obtain themetadata; (c) querying a first next writable address indicating alocation at which data is to be written next to the drive apparatus, soas to obtain the first next writable address; (d) updating the metadatato reflect the writing of the data specified by the write request; (e)instructing the drive apparatus to write the data specified by the writerequest to a location indicated by the first next writable address inthe write-once disc; (f) instructing the drive apparatus to write atleast a part of the updated metadata to the location from which themetadata is read in the step (b) in the write-once disc, wherein thedrive apparatus obtains a second next writable address and when thelocation from which the metadata is read is smaller than the second nextwritable address, records the updated metadata at a location indicatedby the second next writable address, and (g) updating a remapping tableto include an entry which specifies a physical address corresponding tothe location from which the metadata is read and a new physical addresswhere the updated metadata is written.
 7. A system controller accordingto claim 6, wherein the controller includes a semiconductor integratedcircuit.
 8. A non-transitory machine readable medium having a programstored thereon for use in a system controller for instructing a driveapparatus having a pseudo-overwrite function to write data on awrite-once disc, wherein the program is configured to perform a processincluding the steps of: (a) receiving a write request which specifies atleast data for a file to be written; (b) instructing the drive apparatusto read metadata for managing the file from a location in the write-oncedisc, so as to obtain the metadata; (c) querying a first next writableaddress indicating a location at which data is to be written next to thedrive apparatus, so as to obtain the first next writable address; (d)updating the metadata to reflect the writing of the data specified bythe write request; (e) instructing the drive apparatus to write the dataspecified by the write request to a location indicated by the first nextwritable address in the write-once disc; (f) instructing the driveapparatus to write at least a part of the updated metadata to thelocation from which the metadata is read in the step (b) in thewrite-once disc, wherein the drive apparatus obtains a second nextwritable address and when the location from which the metadata is readis smaller than the second next writable address, records the updatedmetadata at a location indicated by the second next writable address,and (g) updating a remapping table to include an entry which specifies aphysical address corresponding to the location from which the metadatais read and a new physical address where the updated metadata iswritten.